.\"
.\" Copyright (C) 1994-2021 Altair Engineering, Inc.
.\" For more information, contact Altair at www.altair.com.
.\"
.\" This file is part of both the OpenPBS software ("OpenPBS")
.\" and the PBS Professional ("PBS Pro") software.
.\"
.\" Open Source License Information:
.\"
.\" OpenPBS is free software. You can redistribute it and/or modify it under
.\" the terms of the GNU Affero General Public License as published by the
.\" Free Software Foundation, either version 3 of the License, or (at your
.\" option) any later version.
.\"
.\" OpenPBS is distributed in the hope that it will be useful, but WITHOUT
.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
.\" FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Affero General Public
.\" License for more details.
.\"
.\" You should have received a copy of the GNU Affero General Public License
.\" along with this program.  If not, see <http://www.gnu.org/licenses/>.
.\"
.\" Commercial License Information:
.\"
.\" PBS Pro is commercially licensed software that shares a common core with
.\" the OpenPBS software.  For a copy of the commercial license terms and
.\" conditions, go to: (http://www.pbspro.com/agreement.html) or contact the
.\" Altair Legal Department.
.\"
.\" Altair's dual-license business model allows companies, individuals, and
.\" organizations to create proprietary derivative works of OpenPBS and
.\" distribute them - whether embedded or bundled with other software -
.\" under a commercial license agreement.
.\"
.\" Use of Altair's trademarks, including but not limited to "PBS™",
.\" "OpenPBS®", "PBS Professional®", and "PBS Pro™" and Altair's logos is
.\" subject to Altair's trademark licensing policies.
.\"
.TH pbs_tmrsh 8B "6 May 2020" Local "PBS Professional"
.SH NAME
.B pbs_tmrsh 
- TM-enabled replacement for rsh/ssh for use by MPI implementations
.SH SYNOPSIS
.B pbs_tmrsh 
<hostname> [-l <username>] [-n] <command> [<args> ...]
.br
.B pbs_tmrsh 
--version

.SH DESCRIPTION
The
.B pbs_tmrsh
command attempts to emulate an "rsh" connection to the specified host,
via underlying calls to the Task Management (TM) API. The program is
intended to be used during MPI integration activities, and not by
end-users. 

Running "pbs_tmrsh <hostname> <command>" causes a PBS task to be started
on 
.I hostname 
running 
.I command. 

.B Requirements for Environment Variables
.br
The environment variables used by the two MPI implementations
to point to the rsh work-alike (MPI_REMSH in the case of HP and
P4_RSHCOMMAND for MPICH) must be set in the job environment
and point to the full path for
.B pbs_tmrsh.
.LP
The file $PBS_HOME/pbs_environment should contain an environment
variable PATH in which to search for the program executable. This
applies to both Windows and Linux. It is expected that a full path will
be specified for the 
.I command 
and the PATH variable will not be needed.

.SH OPTIONS
.IP "-l <username>" 13
Specifies the username under which to execute the task. If used, 
.I username 
must
match the username running the
.B pbs_tmrsh 
command.
.IP "-n" 13
A no-op; provided for MPI implementations that expect to call
rsh with the 
.I -n 
option.
.LP
.IP "--version" 13
The 
.B pbs_tmrsh
command returns its PBS version information and exits.
This option can only be used alone.

.SH OPERANDS
.IP command
Specifies command to be run as a PBS task.

.IP hostname
Specifies host on which to run PBS task.  The 
.I hostname 
may be in IP-dot-address form.

.SH Output and Error
Output and errors are written to the PBS job's output and error files,
not to standard output/error.

The
.B pbs_tmrsh
command writes a diagnostic message to the PBS job's error file for
each error occurrence.

.SH EXIT STATUS
The
.B pbs_tmrsh
program exits with the exit status of the remote command or with
255 if an error occurred. This is because ssh works this way.

.SH SEE ALSO
pbs_attach(8B), tm(3) 
